"""
一、按要求写一个shell程序

1. 提供类似bash的功能
2. 从用户获取一行命令
3. 执行用户所输入的命令 (os.system)
4. 如果用户输入的是mkdir/rmdir，就自己实现 (os.mkdir, os.rmdir)
5. （扩展）如果执行命令出错，就提示用户，但是不要推出shell

"""

import os
import sys
import shlex


if __name__ == '__main__':
    while True:
        try:
            cmd = input('(python) $ ')
        except EOFError:
            print()
            break
        if cmd:
            #elements = cmd.split()
            #
            # 使用类似shell的那种格式来切分
            #
            elements = shlex.split(cmd)
            cmd_name = elements[0]
            args = elements[1:]
            if cmd_name == 'mkdir':
                path = ''.join(args)
                os.mkdir(path, 0o755)
            elif cmd_name == 'rmdir':
                path = ''.join(args)
                os.rmdir(path)
            elif cmd_name == 'exit':
                break
            else:
                os.system(cmd)
